{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h1>Example: Latch Problem</h1>\n",
    "\n",
    "We study an easy example of learning long-term dependencies by using a simple <i>latch task</i> (see [Hochreiter and Mozer](https://link.springer.com/chapter/10.1007/3-540-44668-0_92)). The essence of this task is that a sequence of inputs is presented, beginning with one of two symbols, <b>A</b> or <b>B</b>, and after a variable number of time steps, the model has to output a corresponding symbol. Thus, the task requires memorizing the original input over time. It has to be noted, that both class-defining symbols must only appear at the first position of a sequence. This task was specifically designed to demonstrate the capability of recurrent neural networks to capture long term dependencies. This demonstration shows, that <code>Hopfield</code> and <code>HopfieldPooling</code> adapt extremely fast to this specific task, concentrating only on the first entry of the sequence.\n",
    "\n",
    "This demonstration instructs how to apply <code>Hopfield</code> and <code>HopfieldPooling</code> for an exemplary sequential task, potentially substituting LSTM and GRU layers.\n",
    "\n",
    "NOTE BENE: No tweeking of the exemplary LSTM network is done. The focus is put on the technical details. Feel free to tune yourself and see what works better :)\n",
    "\n",
    "<h3 style=\"color:rgb(208,90,80)\">In the chapters <a href=\"#Adapt-Hopfield-based-Network\">Adapt Hopfield-based Network</a> and <a href=\"#Adapt-Hopfield-based-Pooling\">Adapt Hopfield-based Pooling</a> you can explore and try the new functionalities of our new Hopfield layer.</h3>\n",
    "\n",
    "In order to run this notebook, a few modules need to be imported. The installation of third-party modules is <i>not</i> covered here."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "# Import general modules used e.g. for plotting.\n",
    "import matplotlib.pyplot as plt\n",
    "import os\n",
    "import pandas as pd\n",
    "import seaborn as sns\n",
    "import sys\n",
    "import torch\n",
    "\n",
    "# Importing Hopfield-specific modules.\n",
    "from auxiliary.data import LatchSequenceSet\n",
    "from modules import Hopfield, HopfieldPooling\n",
    "\n",
    "# Import auxiliary modules.\n",
    "from distutils.version import LooseVersion\n",
    "from typing import List, Tuple\n",
    "\n",
    "# Importing PyTorch specific modules.\n",
    "from torch import Tensor\n",
    "from torch.nn import Flatten, Linear, LSTM, Module, Sequential\n",
    "from torch.nn.functional import binary_cross_entropy_with_logits\n",
    "from torch.nn.utils import clip_grad_norm_\n",
    "from torch.optim import AdamW\n",
    "from torch.utils.data import DataLoader\n",
    "from torch.utils.data.sampler import SubsetRandomSampler\n",
    "\n",
    "# Set plotting style.\n",
    "sns.set()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Specific minimum versions of Python itself as well as of some used modules is required."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Installed Python version:  3.8.5 (✓)\n",
      "Installed PyTorch version: 1.6.0 (✓)\n"
     ]
    }
   ],
   "source": [
    "python_check = '(\\u2713)' if sys.version_info >= (3, 8) else '(\\u2717)'\n",
    "pytorch_check = '(\\u2713)' if torch.__version__ >= LooseVersion(r'1.5') else '(\\u2717)'\n",
    "\n",
    "print(f'Installed Python version:  {sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro} {python_check}')\n",
    "print(f'Installed PyTorch version: {torch.__version__} {pytorch_check}')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3 style=\"color:rgb(0,120,170)\">Create Dataset</h3>\n",
    "\n",
    "We study an easy example of learning long-term dependencies by using a simple <i>latch task</i>. \n",
    "The latch task was introcuded by Hochreiter and Mozer:<br>\n",
    "<cite>Sepp Hochreiter, Michael Mozer, 2001. A discrete probabilistic memory model for discovering dependencies in time. Artificial Neural Networks -- ICANN 2001, 13, pp.661-668.</cite><br><br>\n",
    "The essence of this task is that a sequence of inputs is presented, beginning with one of two symbols, <b>A</b> or <b>B</b>, and after a variable number of time steps, the model has to output a corresponding symbol. Thus, the task requires memorizing the original input over time. It has to be noted, that both class-defining symbols must only appear at the first position of an instance. Defining arguments are:\n",
    "<br><br>\n",
    "<table>\n",
    "    <tr>\n",
    "        <th>Argument</th>\n",
    "        <th>Value (used in this demo)</th>\n",
    "        <th>Description</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>num_samples</code></th>\n",
    "        <th>4096</th>\n",
    "        <th>Amount of samples of the full dataset.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>num_instances</code></th>\n",
    "        <th>32</th>\n",
    "        <th>Amount of instances per sample (sample length).</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>num_characters</code></th>\n",
    "        <th>20</th>\n",
    "        <th>Amount of different characters (size of the one-hot encoded vector).</th>\n",
    "    </tr>\n",
    "</table>\n",
    "\n",
    "Let's define the dataset using previously mentioned properties as well as a logging directory for storing all auxiliary outputs like performance plots."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "latch_sequence_set = LatchSequenceSet(\n",
    "    num_samples=4096,\n",
    "    num_instances=32,\n",
    "    num_characters=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [],
   "source": [
    "log_dir = f'resources/'\n",
    "os.makedirs(log_dir, exist_ok=True)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3 style=\"color:rgb(0,120,170)\">Create Auxiliaries</h3>\n",
    "\n",
    "Before digging into Hopfield-based networks, a few auxiliary variables and functions need to be defined. This is nothing special with respect to Hopfield-based networks, but rather common preparation work of (almost) every machine learning setting (e.g. definition of a <i>data loader</i> as well as a <i>training loop</i>). We will see, that this comprises the most work of this whole demo."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "device = torch.device(r'cuda:0' if torch.cuda.is_available() else r'cpu')\n",
    "\n",
    "# Create data loader of training set.\n",
    "sampler_train = SubsetRandomSampler(list(range(512, 4096 - 512)))\n",
    "data_loader_train = DataLoader(dataset=latch_sequence_set, batch_size=32, sampler=sampler_train)\n",
    "\n",
    "# Create data loader of validation set.\n",
    "sampler_eval = SubsetRandomSampler(list(range(512)) + list(range(4096 - 512, 4096)))\n",
    "data_loader_eval = DataLoader(dataset=latch_sequence_set, batch_size=32, sampler=sampler_eval)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [],
   "source": [
    "def train_epoch(network: Module,\n",
    "                optimiser: AdamW,\n",
    "                data_loader: DataLoader\n",
    "               ) -> Tuple[float, float]:\n",
    "    \"\"\"\n",
    "    Execute one training epoch.\n",
    "    \n",
    "    :param network: network instance to train\n",
    "    :param optimiser: optimiser instance responsible for updating network parameters\n",
    "    :param data_loader: data loader instance providing training data\n",
    "    :return: tuple comprising training loss as well as accuracy\n",
    "    \"\"\"\n",
    "    network.train()\n",
    "    losses, accuracies = [], []\n",
    "    for sample_data in data_loader:\n",
    "        data, target = sample_data[r'data'], sample_data[r'target']\n",
    "        data, target = data.to(device=device), target.to(device=device)\n",
    "\n",
    "        # Process data by Hopfield-based network.\n",
    "        model_output = network.forward(input=data)\n",
    "\n",
    "        # Update network parameters.\n",
    "        optimiser.zero_grad()\n",
    "        loss = binary_cross_entropy_with_logits(input=model_output, target=target, reduction=r'mean')\n",
    "        loss.backward()\n",
    "        clip_grad_norm_(parameters=network.parameters(), max_norm=1.0, norm_type=2)\n",
    "        optimiser.step()\n",
    "\n",
    "        # Compute performance measures of current model.\n",
    "        accuracy = (model_output.sigmoid().round() == target).to(dtype=torch.float32).mean()\n",
    "        accuracies.append(accuracy.detach().item())\n",
    "        losses.append(loss.detach().item())\n",
    "    \n",
    "    # Report progress of training procedure.\n",
    "    return (sum(losses) / len(losses), sum(accuracies) / len(accuracies))\n",
    "\n",
    "\n",
    "def eval_iter(network: Module,\n",
    "              data_loader: DataLoader\n",
    "             ) -> Tuple[float, float]:\n",
    "    \"\"\"\n",
    "    Evaluate the current model.\n",
    "    \n",
    "    :param network: network instance to evaluate\n",
    "    :param data_loader: data loader instance providing validation data\n",
    "    :return: tuple comprising validation loss as well as accuracy\n",
    "    \"\"\"\n",
    "    network.eval()\n",
    "    with torch.no_grad():\n",
    "        losses, accuracies = [], []\n",
    "        for sample_data in data_loader:\n",
    "            data, target = sample_data[r'data'], sample_data[r'target']\n",
    "            data, target = data.to(device=device), target.to(device=device)\n",
    "\n",
    "            # Process data by Hopfield-based network.\n",
    "            model_output = network.forward(input=data)\n",
    "            loss = binary_cross_entropy_with_logits(input=model_output, target=target, reduction=r'mean')\n",
    "\n",
    "            # Compute performance measures of current model.\n",
    "            accuracy = (model_output.sigmoid().round() == target).to(dtype=torch.float32).mean()\n",
    "            accuracies.append(accuracy.detach().item())\n",
    "            losses.append(loss.detach().item())\n",
    "\n",
    "        # Report progress of validation procedure.\n",
    "        return (sum(losses) / len(losses), sum(accuracies) / len(accuracies))\n",
    "\n",
    "\n",
    "def operate(network: Module,\n",
    "            optimiser: AdamW,\n",
    "            data_loader_train: DataLoader,\n",
    "            data_loader_eval: DataLoader,\n",
    "            num_epochs: int = 1\n",
    "           ) -> Tuple[pd.DataFrame, pd.DataFrame]:\n",
    "    \"\"\"\n",
    "    Train the specified network by gradient descent using backpropagation.\n",
    "    \n",
    "    :param network: network instance to train\n",
    "    :param optimiser: optimiser instance responsible for updating network parameters\n",
    "    :param data_loader_train: data loader instance providing training data\n",
    "    :param data_loader_eval: data loader instance providing validation data\n",
    "    :param num_epochs: amount of epochs to train\n",
    "    :return: data frame comprising training as well as evaluation performance\n",
    "    \"\"\"\n",
    "    losses, accuracies = {r'train': [], r'eval': []}, {r'train': [], r'eval': []}\n",
    "    for epoch in range(num_epochs):\n",
    "        \n",
    "        # Train network.\n",
    "        performance = train_epoch(network, optimiser, data_loader_train)\n",
    "        losses[r'train'].append(performance[0])\n",
    "        accuracies[r'train'].append(performance[1])\n",
    "        \n",
    "        # Evaluate current model.\n",
    "        performance = eval_iter(network, data_loader_eval)\n",
    "        losses[r'eval'].append(performance[0])\n",
    "        accuracies[r'eval'].append(performance[1])\n",
    "    \n",
    "    # Report progress of training and validation procedures.\n",
    "    return pd.DataFrame(losses), pd.DataFrame(accuracies)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "def set_seed(seed: int = 42) -> None:\n",
    "    \"\"\"\n",
    "    Set seed for all underlying (pseudo) random number sources.\n",
    "    \n",
    "    :param seed: seed to be used\n",
    "    :return: None\n",
    "    \"\"\"\n",
    "    torch.manual_seed(42)\n",
    "    torch.backends.cudnn.deterministic = True\n",
    "    torch.backends.cudnn.benchmark = False\n",
    "\n",
    "\n",
    "def plot_performance(loss: pd.DataFrame,\n",
    "                     accuracy: pd.DataFrame,\n",
    "                     log_file: str\n",
    "                    ) -> None:\n",
    "    \"\"\"\n",
    "    Plot and save loss and accuracy.\n",
    "    \n",
    "    :param loss: loss to be plotted\n",
    "    :param accuracy: accuracy to be plotted\n",
    "    :param log_file: target file for storing the resulting plot\n",
    "    :return: None\n",
    "    \"\"\"\n",
    "    fig, ax = plt.subplots(1, 2, figsize=(20, 7))\n",
    "    \n",
    "    loss_plot = sns.lineplot(data=loss, ax=ax[0])\n",
    "    loss_plot.set(xlabel=r'Epoch', ylabel=r'Cross-entropy Loss')\n",
    "    \n",
    "    accuracy_plot = sns.lineplot(data=accuracy, ax=ax[1])\n",
    "    accuracy_plot.set(xlabel=r'Epoch', ylabel=r'Accuracy')\n",
    "    \n",
    "    ax[1].yaxis.set_label_position(r'right')\n",
    "    fig.tight_layout()\n",
    "    fig.savefig(log_file)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h2>LSTM-based Network</h2>\n",
    "\n",
    "The instantiation of the heart of an LSTM-based network, the module <code>LSTM</code>, is rather straightforward. Only <i>two</i> arguments, the size of the input as well as the site of the hidden state, need to be set.\n",
    "<br><br>\n",
    "<table>\n",
    "    <tr>\n",
    "        <th>Argument</th>\n",
    "        <th>Value (used in this demo)</th>\n",
    "        <th>Description</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>input_size</code></th>\n",
    "        <th>num_characters (20)</th>\n",
    "        <th>Size (depth) of the input.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>hidden_size</code></th>\n",
    "        <th>4</th>\n",
    "        <th>Size (depth) of the hidden state.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>...</code></th>\n",
    "        <th>default</th>\n",
    "        <th>The remaining arguments are not explicitly used in this example.</th>\n",
    "    </tr>\n",
    "</table>\n",
    "\n",
    "An additional output projection is defined, to downproject the hidden state of the last time step of the <code>LSTM</code> to the correct output size. Afterwards, everything is wrapped into a container of type <code>torch.nn.Sequential</code> and a corresponding optimiser is defined."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "class LSTMNetwork(Module):\n",
    "    def __init__(self, input_size: int, hidden_size: int):\n",
    "        \"\"\"\n",
    "        Initialize a new instance of an LSTM-based network.\n",
    "        \n",
    "        :param input size: size (depth) of the input\n",
    "        :param hidden_size: size (depth) of the hidden state\n",
    "        \"\"\"\n",
    "        super(LSTMNetwork, self).__init__()\n",
    "        self.lstm = LSTM(input_size, hidden_size, batch_first=True)\n",
    "        self.projection = Linear(hidden_size, 1)\n",
    "    \n",
    "    def forward(self, input: Tensor) -> Tensor:\n",
    "        \"\"\"\n",
    "        Compute result of LSTM-based network on specified data.\n",
    "        \n",
    "        :param input: data to be processed by the LSTM-based network\n",
    "        :return: result as computed by the LSTM-based network\n",
    "        \"\"\"\n",
    "        out, _ = self.lstm.forward(input=input)     \n",
    "        return self.projection.forward(input=out[:, -1, :]).flatten()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "set_seed()\n",
    "network = LSTMNetwork(\n",
    "    input_size=latch_sequence_set.num_characters,\n",
    "    hidden_size=4).to(device=device)\n",
    "optimiser = AdamW(params=network.parameters(), lr=1e-3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3 style=\"color:rgb(0,120,170)\">Operate LSTM-based Network</h3>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "losses, accuracies = operate(\n",
    "    network=network,\n",
    "    optimiser=optimiser,\n",
    "    data_loader_train=data_loader_train,\n",
    "    data_loader_eval=data_loader_eval,\n",
    "    num_epochs=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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ERERkdKzCo5CqAizZurpNxYRAU77tqcJEyZw9OhRrrjiCi677DJyc3O59957KyKbiIj8hIDfwy8vasdlAzNZsekAE19dws6c407HEhERERGRGJL/8Z/Je2c8djjodBQRiRGnHcr24osv8sgjj1REFhEROUOGYTC0Z0Oa1KnB//t4HQ++vpRrhrTinHYZTkcTEREREZFKzso/jH10H3gDTkcRkRhy2hHKs2fProAYIiJyNlo2rM1913WncUZNXp62njc+30gobDkdS0REREREKrHwlsUABEbfg+H2OpxGRGLFaUco169fn+uvv54uXboQHx9f8vl1111XrsFEROTM1ErwMf7KTnz4zVY+W7SdbXuPcsuF7UipFed0NBGRKm/q1Kn87W9/IxwOc8011zB27NgT1j/33HN88MEH1KxZE4DLLrvshG2efvppXC4Xv/nNbyo0t4iIVG+h7IWYyQ0xayRTOH8SrowWeJp2dzqWiFRypy0oJyYmArBr167yziIiImfJZZpcOjCTpnVr8c9P13P/K0u4aVRb2jdNdjqaiEiVtW/fPp566ik+/PBDvF4vV1xxBT179iQzM7Nkm7Vr1/Lkk0/SuXPnE/Y9duwYDz/8MNOnT+fnP/95RUcXEZFqzDqei5WzFV/Py8DlIbJrHZHd3+Fu0g3DMJyOJyKV2GkLyg8//HDJ/w8Gg3i9egRCRKSy69oylfqp3Xn+o7U8/e4qsvo0ZlSfJpimOoYiImVt/vz59OrVq2QgxpAhQ5gxYwa//vWvS7ZZu3YtL774Irt27aJ79+7ccccd+Hw+vvrqKxo3bqyn/0REpMKZCUnEX/kEhsePYZh4O46gcPbLRHasxt2wo9PxRKQSO2VBORgMcu+993LBBRcwaNAgAH7zm9+QlJTEAw88gNt92lq0iIg4KD0pwB/HdeWNzzfyybxtbNl9lJuy2lAjoBuDIiJlaf/+/aSmppYsp6WlsXr16pLlvLw8Wrduzfjx42nUqBF33nknL7zwArfddhsXXnghAM8++2zU509OToh632ilptao8HNWFWq76KjdoqN2i051aDfbtgEw/uu72kkXsH35R9jrZpDate8ZH7M6tFt5ULtFR+3mrFNWhZ955hmOHz9Oly5dSj6bOHEi999/P88++yy33XZbhQQUEZHo+TwubhjRmsz6tXjri03c/+oSfnlhe5rW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nTqV4cOHM3jwYCZNmnTS+q1bt3L11VczatQobrjhBo4cOQLA6tWrGTNmDFlZWdx8883k5OQAcPToUW666SaGDRvG2LFjSz4XERERqe5qBrzclNWW/7u0AwXBMA+9sYyXp6yhMBh2OpqIiIiISIVypTbBMEwiezdjHd3vdJwqp9wKyvv27eOpp57irbfeYsqUKUyePJns7OyS9bZtc8stt3DjjTfyySef0Lp1a1566SVs2+bWW29l/PjxTJ06ldGjR3PvvfcC8PTTT9OtWzc+++wzLr30Uv785z+XV3wRERGRmNShWQoP3NCTgV3q8cmcrdz798Ws/f6g07FERERERCqUHSqi4PO/UvD1S9hWxOk4VUq5FZTnz59Pr169SExMJBAIMGTIEGbMmFGyft26dQQCAfr16wfAL37xC8aOHcuhQ4coLCykV69eAAwcOJC5c+cSDAaZPXs2WVlZAIwcOZJvv/2WUChUXl9BREREJCbF+dz8bHBLHv11X7wekycnr+If09ZzvED9JhERERGpHgyPD1+fn2Htyya4cprTcaqUciso79+/n9TU1JLltLQ09u3bV7K8fft2UlJSuPvuu7nooouYMGECgUCA2rVrEwgEmDt3LgDTp08nFApx6NChE47pdrtJSEggNze3vL6CiIiISExr0ySZ+67rzsjejVi4fh/3vLyQJRv2Y9u209FERERERMqdJ7MX7sxeBJd9TGT/VqfjVBnl9lI+y7IwDKNk2bbtE5bD4TCLFy/mzTffpH379jz99NM88sgjPPLIIzzzzDM8+uijPPHEE4wePZrExEQ8Hs9J57BtG9MsfU08OTnh7L5UlPRCnOio3aKjdouO2i06arfoqN2io3aLTt06idw8phODz2nCM++u5G9T1tKzbQa3jOlAcq04p+OJiIiIiJQrf5+rydu7mYJZLxI/5n4Mj9/pSDGv3ArKGRkZLF26tGQ5JyeHtLS0kuXU1FQaNWpE+/btgeIpLG699dbiUG43b7zxBgAHDx7khRdeIDExkbS0NA4cOEBGRgbhcJi8vDwSExNLnengweNYVsWOyElNrUFOzrEKPWdVoHaLjtotOmq36KjdoqN2i47aLTr/3W4JHpM7ruzEF0t2MmXOVm559CsuHZhJv451Mf/rpn91ZpqGYwMQRERERKR8GL54/ANupPCrF7AO78GV2sTpSDGv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H73b1aFeSgLPfbiGh99cztWDW3Bux7pOxzor+/fvJzU1tWQ5LS2N1atXn7DN66+/Tps2bejYsWPJZ7Vr1yYQCDB37lz69u3L9OnTCYVCHDp0iPT09FKfPzk54ey/xBlKTa1R4eesKtR20VG7RUftFh21W3TUbtFRu0WnsrabFSpix9uP4UlMJ+PyuzF9AacjlQsVlEVERESkQjXKqMGfru3Gi5+s45XPNrBt7zGuvKA5bldsPjxnWRaGYZQs27Z9wvKmTZuYOXMmr776Knv3/ufFhIZh8Mwzz/Doo4/yxBNPMHr0aBITE/F4PGd0/oMHj2NZFfdm8dTUGuTkHKuw81UlarvoqN2io3aLjtotOmq36KjdolPZ283T43IKZ73E9tf+RGDY7zH8FX/z/99M0yiXwQex2WsXERERkZhWI+Dltss6MqxnQ75esYvH3lrBoWOx+WhgRkbGCS/Ty8nJIS0trWR5xowZ5OTkMGbMGG666Sb279/PVVddBYDb7eaNN95gypQpjBo1CsuySExMrOivICIiIiJlxNOsJ3GDf4OVu4P8qQ9j5R92OlKZU0FZRERERBzhMk0uHZjJL0a3Zcf+40x8dQmbdx52OtYZ6927NwsWLCA3N5eCggJmzpxJv379StbfeuutfP7553z88ce89NJLpKWl8dZbbwFw9913l0yP8corrzB06FBMU110ERERkVjmbtSJuKG/wzp2gPypD1e5OZXVWxURERERR/Vonc4fx3XF53Xx2FsrmLV8J7ZdcVM4nK309HRuu+02xo0bx4UXXsjIkSPp0KEDN954I2vWrPnJfe+77z4mTJjA0KFD2bFjB3fccUcFpRYRERGR8uSu14bAiPF42w3GcPucjlOmNIeyiIiIiDiufmoCf7qmGy9NXc+bMzdx4HAhl52X6XSsUsvKyiIrK+uEz15++eWTtqtfvz6zZs0qWe7QoQMfffRRuecTERERkYrnSs/ElV7cpw1tWYS7SVcMM/bLsRqhLCIiIiKVQsDv4dZLOnBRv6aEwpbTcUREREREyoQdKsSIq1klismgEcoiIiIiUomYhkFW78ZOxxARERERKTOGx4+7bmunY5QZjVAWERERERERERERkVJRQVlERERERERERERESkUFZREREREREREREREpFRWURURERERERERERKRUVFAWERERERERERERkVJRQVlERERERERERERESkUFZREREREREREREREpFRWURURERERERERERKRUVFAWERERERERERERkVJRQVlERERERERERERESkUFZREREREREREREREpFRWURURERERERERERKRUVFAWERERERERERERkVJRQVlERERERERERERESkUFZREREREREREREREpFRWURURERERERERERKRUVFAWERERERERERERkVJxOx2gIpmmUa3OG+vUbtFRu0VH7RYdtVt01G7RUbtFR+1WerHaVk7kjtW2qgzUdtFRu0VH7RYdtVt01G7RUbtFR+1WOuXVToZt23a5HFlEREREREREREREqhRNeSEiIiIiIiIiIiIipaKCsoiIiIiIiIiIiIiUigrKIiIiIiIiIiIiIlIqKiiLiIiIiIiIiIiISKmooCwiIiIiIiIiIiIipaKCsoiIiIiIiIiIiIiUigrKIiIiIiIiIiIiIlIqKiiLiIiIiIiIiIiISKmooCwiIiIiIiIiIiIipaKCchmZOnUqw4cPZ/DgwUyaNOmk9d999x0XX3wxQ4YM4Y9//CPhcNiBlJXPc889x4gRIxgxYgSPPfbYj64fOHAgo0ePZvTo0T/attXR1VdfzYgRI0raZdWqVSes1/V2svfee6+kvUaPHk3Xrl2ZOHHiCdvoejvR8ePHGTlyJDt37gRg/vz5ZGVlMXjwYJ566qkf3Wf37t2MHTuWoUOHcsstt5CXl1eRkSuF/223yZMnM3LkSLKysrjrrrsIBoMn7fPRRx/Rt2/fkmvvVO1blf1vu911110MHjy4pE2++OKLk/bR9XZiu33zzTcn/J7r1asXN99880n76HqT0lL/Njrq30ZH/dszp/7tmVP/Njrq30ZH/dvoqH8bI2w5a3v37rUHDhxoHzp0yM7Ly7OzsrLszZs3n7DNiBEj7BUrVti2bdt33XWXPWnSJAeSVi7z5s2zL7/8cruoqMgOBoP2uHHj7JkzZ56wzc0332wvX77coYSVk2VZdt++fe1QKHTKbXS9/bRNmzbZgwYNsg8ePHjC57re/mPlypX2yJEj7bZt29o7duywCwoK7P79+9vbt2+3Q6GQff3119uzZ88+ab+bbrrJnjZtmm3btv3cc8/Zjz32WEVHd9T/ttvWrVvtQYMG2ceOHbMty7Jvv/12+5VXXjlpv4kTJ9pTp06t+MCVxP+2m23b9siRI+19+/b95H663k5ut3/bv3+/ff7559vff//9SftV9+tNSkf92+iofxsd9W/Pnvq3p6f+bXTUv42O+rfRUf82dmiEchmYP38+vXr1IjExkUAgwJAhQ5gxY0bJ+l27dlFYWEinTp0AuPjii09YX12lpqZy55134vV68Xg8NGvWjN27d5+wzdq1a3nxxRfJyspi4sSJFBUVOZS28ti6dSsA119/PaNGjeLNN988Yb2ut9O77777uO2220hKSjrhc11v//Huu+8yYcIE0tLSAFi9ejWNGjWiQYMGuN1usrKyTrquQqEQS5YsYciQIUD1vPb+t928Xi8TJkwgISEBwzBo0aLFSb/nANasWcNHH31EVlYWf/jDHzhy5EhFR3fU/7ZbQUEBu3fv5u677yYrK4tnnnkGy7JO2EfX28nt9t8ee+wxrrjiCho3bnzSuup+vUnpqH8bHfVvo6P+7dlT//b01L+Njvq30VH/Njrq38YOFZTLwP79+0lNTS1ZTktLY9++fadcn5qaesL66qp58+YlncJt27bx2Wef0b9//5L1eXl5tG7dmvHjx/PRRx9x9OhRXnjhBYfSVh5Hjx7lnHPO4fnnn+fVV1/lnXfeYd68eSXrdb39tPnz51NYWMiwYcNO+FzX24n+/Oc/061bt5Ll0/2eAzh06BAJCQm43W6gel57/9tu9erVo0+fPgDk5uYyadIkzj///JP2S01N5Ze//CWffPIJderUOelx1aruf9vtwIED9OrVi4ceeoh3332XpUuX8v7775+wj663k9vt37Zt28bixYsZN27cj+5X3a83KR31b6Oj/m101L89O+rflo76t9FR/zY66t9GR/3b2KGCchmwLAvDMEqWbds+Yfl066u7zZs3c/3113P77befcKcpPj6el19+mWbNmuF2u7n++uv55ptvnAtaSXTu3JnHHnuMGjVqkJSUxCWXXHJCu+h6+2nvvPMO11133Umf63r7aaW5rn7sM117xfbt28c111zDmDFj6Nmz50nrn3/+ebp27YphGPz85z9nzpw5DqSsPBo0aMDzzz9PWloacXFxXH311Sf9POp6O7XJkydz1VVX4fV6f3S9rjcpDfVvz476t2dG/duzo/5tdNS/PTvq354Z9W/Pjvq3lY8KymUgIyODnJyckuWcnJwThuf/7/oDBw786PD96mjZsmVce+21/P73v+eiiy46Yd3u3btPuGNn23bJnbrqbOnSpSxYsKBk+X/bRdfbqQWDQZYsWcJ555130jpdbz/tdL/nAJKSkjh27BiRSOSU21RHW7Zs4YorruCiiy7iV7/61Unrjx07xquvvlqybNs2LperAhNWPhs3buTzzz8vWf6xn0ddb6f21VdfMXz48B9dp+tNSkv92+ipf3vm1L+Nnvq30VP/Nnrq35459W/Pjvq3lY8KymWgd+/eLFiwgNzcXAoKCpg5cyb9+vUrWV+vXj18Ph/Lli0D4OOPPz5hfXW1Z88efvWrX/HEE08wYsSIk9b7/X4ef/xxduzYgW3bTJo0iUGDBjmQtHI5duwYjz32GEVFRRw/fpyPPvrohHbR9XZqGzdupHHjxgQCgZPW6Xr7aR07duT777/nhx9+IBKJMG3atJOuK4/HQ7du3fj0008BmDJlSrW/9o4fP84NN9zAb3/7W66//vof3SYQCPD3v/+95G32b775ZrW/9mzb5qGHHuLIkSOEQiEmT558Upvoevtxubm5FBYW0qBBgx9dr+tNSkv92+iofxsd9W+jp/5t9NS/jY76t9FR/zZ66t9WTiool4H09HRuu+02xo0bx4UXXsjIkSPp0KEDN954I2vWrAHgiSee4OGHH2bo0KHk5+efct6X6uQf//gHRUVFPPLII4wePZrRo0fz9ttvl7RbUlISEydO5JZbbmHo0KHYtv2jj3JVNwMHDqR///5ceOGFjBkzhjFjxtC5c2ddb6WwY8cOMjIyTvhM11vp+Hw+HnnkEX7zm98wfPhwmjZtytChQwH44x//yFdffQXAhAkTePfddxk+fDhLly7l//7v/xxM7bz333+fAwcO8Morr5T8nvvrX/8K/KfdXC4XTz/9NPfddx/Dhg1j3bp1jB8/3uHkzmrVqhU33XQTV155JSNGjKB169aMHDkS0PV2Ojt37jzp9xzoepMzp/5tdNS/jY76t9FT/zZ66t9GR/3b6Kh/Gz31bysnw7Zt2+kQIiIiIiIiIiIiIlL5aYSyiIiIiIiIiIiIiJSKCsoiIiIiIiIiIiIiUioqKIuIiIiIiIiIiIhIqaigLCIiIiIiIiIiIiKlooKyiIiIiIiIiIiIiJSK2+kAIiISvZYtW9KiRQtM88T7g88//zz169cv83MtWLCApKSkMj2uiIiIiMi/qX8rIlL5qaAsIhLjXnvtNXWCRURERKTKUP9WRKRyU0FZRKSKWrRoEU888QR169Zl69at+P1+HnnkEZo1a8axY8e4//772bBhA4ZhcO655/K73/0Ot9vNqlWrePDBBykoKMDj8XD77bdzzjnnAPDss8+yatUqDh8+zA033MDYsWMd/pYiIiIiUl2ofysiUjmooCwiEuOuueaaEx4JrF+/Ps8//zwAa9eu5Y477qBbt268/fbbjB8/ng8//JAHH3yQxMREpk6dSigU4pZbbuGf//wn1113Hb/61a948MEHGTBgAGvXruWuu+7i448/BqBBgwZMmDCB9evXc/nll3PZZZfh8Xgc+d4iIiIiUjWpfysiUrmpoCwiEuN+6pHAVq1a0a1bNwDGjBnDxIkTOXToEN9++y1vv/02hmHg9Xq54ooreO211+jTpw+maTJgwAAA2rVrx9SpU0uON3LkSABat25NMBjk+PHj1K5du3y/oIiIiIhUK+rfiohUbubpNxERkVjlcrl+9DPLsjAMo+Qzy7IIh8O4XK4TPgfYtGkT4XAYALe7+D7kv7exbbu8oouIiIiInET9WxER56mgLCJShW3YsIENGzYAMHnyZDp37kzNmjXp27cvb775JrZtEwwGeffdd+nduzdNmzbFMAzmzZsHwLp167jmmmuwLMvJryEiIiIiAqh/KyJSGWjKCxGRGPe/c8wB/O53v8Pv95OSksLTTz/Nrl27SEpK4rHHHgPgnnvu4cEHHyQrK4tQKMS5557LL37xC7xeL88++ywPPfQQjz32GB6Ph2effRav1+vEVxMRERGRakj9WxGRys2w9TyHiEiVtGjRIh544AGmTZvmdBQRERERkbOm/q2ISOWgKS9EREREREREREREpFQ0QllERERERERERERESkUjlEVERERERERERESkVFRQFhEREREREREREZFSUUFZREREREREREREREpFBWURERERERERERERKRUVlEVERERERERERESkVFRQFhEREREREREREZFS+f+YlkfKeJCnjQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 1440x504 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_performance(loss=losses, accuracy=accuracies, log_file=f'{log_dir}/lstm_base.pdf')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h2>Hopfield-based Network</h2>\n",
    "\n",
    "The instantiation of the heart of a Hopfield-based network, the module <code>Hopfield</code>, is even simpler. Only <i>one</i> argument, the size of the input, needs to be set.\n",
    "<br><br>\n",
    "<table>\n",
    "    <tr>\n",
    "        <th>Argument</th>\n",
    "        <th>Value (used in this demo)</th>\n",
    "        <th>Description</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>input_size</code></th>\n",
    "        <th>num_characters (20)</th>\n",
    "        <th>Size (depth) of the input (state pattern).</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>...</code></th>\n",
    "        <th>default</th>\n",
    "        <th>The remaining arguments are not explicitly used in this example.</th>\n",
    "    </tr>\n",
    "</table>\n",
    "\n",
    "An additional output projection is defined, to downproject the result of <code>Hopfield</code> to the correct output size. Afterwards, everything is wrapped into a container of type <code>torch.nn.Sequential</code> and a corresponding optimiser is defined. Now the Hopfield-based network and all auxiliaries are set up and ready to <i>associate</i>!"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "set_seed()\n",
    "hopfield = Hopfield(\n",
    "    input_size=latch_sequence_set.num_characters)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "output_projection = Linear(in_features=hopfield.output_size * latch_sequence_set.num_instances, out_features=1)\n",
    "network = Sequential(hopfield, Flatten(), output_projection, Flatten(start_dim=0)).to(device=device)\n",
    "optimiser = AdamW(params=network.parameters(), lr=1e-3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3 style=\"color:rgb(0,120,170)\">Operate Hopfield-based Network</h3>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [],
   "source": [
    "losses, accuracies = operate(\n",
    "    network=network,\n",
    "    optimiser=optimiser,\n",
    "    data_loader_train=data_loader_train,\n",
    "    data_loader_eval=data_loader_eval,\n",
    "    num_epochs=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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+3Z98sknkqRXXnlFO3fulCQVFhbq17/+tV566SV17txZ06dPb/CaOTk5crvdqqqqaquPlFJizRgeAmUAAIC0kWN2AZkkthH2BUIqcOeaXA0AAABaKhqNymKxxI8Nw6h33K5dO82ZM0e33HKLotGozjvvPNntdXvCBx54IP688ePH64wzztjnexiGIau1eX0eHTu6m/X81lJY6GnV19u8KyBJOvjAA1r9tVNJJn+2ZGLdEsfaJYZ1SxxrlxjWLTGsm/kIlFuR21V3MxECZQAAgMxQUlKidevWxY8rKytVVFQUP45EIiopKdFzzz0nSVq/fr26dOkir9erF154QWPHjpVUFxrbbDZJdV3OO3fuVElJicLhsKqrq1VQUNCsunbt8ikaNVr24ZqpsNCjykpvq77mlu11Y0DCtaFWf+1UkYx1ywasW+JYu8Swbolj7RLDuiWGdWseq9WSlEYERl60otjsN58/O2fgAQAAZJq+fftq7dq1qqqqUiAQ0MqVK9WvX7/4eYvFonHjxqmiokKGYeiJJ57QkCFD5HK59Oijj+qDDz6QJD399NPxDuX+/ftr2bJlkqSXX35ZvXv3jnc1Zxvv3pEXzFAGAABIH3Qot6IfjrwAAABA+isuLlZZWZlGjx6tUCikUaNGqVevXpowYYImTZqknj17avr06Ro/fryCwaBOOOEEXX755bLZbLr77rt12223qaamRocccojmzp0rSbr22ms1ZcoUDR06VB6PR/PmzTP5U5rH5w/JIik/j0AZAAAgXRAotyK3q24j7CVQBgAAyBilpaUqLS2t99iCBQvifx4wYIAGDBjQ4LrevXtr6dKlDR4vKCjQQw891Op1piNfIKR8p11Wq6XxJwMAACAlMPKiFX0/8iJociUAAABA6vMGQoy7AAAASDMEyq0ox2ZVnsNGhzIAAADQBD5/MP4rPwAAAKQHAuVW5nbamaEMAAAANIEvEIrfhwQAAADpgUC5lXlcdvn8BMoAAABAY3yMvAAAAEg7BMqtzO100KEMAAAANMIwDAJlAACANESg3MoYeQEAAAA0riYYUThiMEMZAAAgzRAotzKPy85N+QAAAIBGxJow6FAGAABILwTKrczttKs2GFEoHDG7FAAAACBlxQJlj9NhciUAAABoDgLlVhb7yZ4vEDa5EgAAACB1effeyJqRFwAAAOmFQLmVufPq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/XQ9++yz6ty5s3796183em2TbrP8xRdf6LnnntNf/vIXHXPMMRoxYoTefvttXXvttXrwwQdb/AEyndvlkNf/rdllAAAAAKao3ttcwcgLAAAA851yyikqKCjQRRddpN///vfKy8uTJB1xxBFavHhxo9c3GihfeOGF2rx5s0aOHKnnn39eJSUlkqQBAwaoT58+LSw/O7iddlXXhBQ1DFktFrPLAQAAANqUd2+g7HY5TK4EAAAAd911l4444gjl5+crGAxq165d6tixoyRp1apVjV7f6MiLiy66SH/7299UVlYWD5MlyWq16m9/+1sLSs8eHqddhiH5a8JmlwIAAAC0Od/eG1S785r0A0kAAAAk0fbt23XOOedIkrZs2aKhQ4fqjTfeaPL1je7oBg8erMWLF+udd96RzWbTKaecopEjR0qS8vPzEyw7u8RmxXEjEgAAAGQjHx3KAAAAKeOhhx7Sk08+KUk69NBDtXTpUv3617/Wqaee2qTrGw2UZ86cqU2bNmn48OEyDEMvvPCC/vvf/6qsrKxllWeR2Kw4nz8kdTC5GAAAAKCNxUde0FwBAABgumg0Wm8SRefOnRWNRpt8faOB8t///nf99a9/ld1et/k766yzdNZZZxEoN0OsQ9kbCJpcCQAAAND2fP66fTCBMgAAgPk6dOigZ599VqNGjZLFYtHSpUvVqVOnJl/f6AzlDh06KBKJxI8tFovatWuXWLVZyp33gw5lAAAAIMt4AyHlOWyy5zT61w8AAAAk2fTp07VkyRL16tVLvXr10pIlSzRt2rQmX99oh3L37t110UUXacSIEbLZbHr55ZfVvn17Pf7445Kkyy67LPHqs8QPZygDAAAA2YZ7iQAAAKSOQw45RC+++KK+++472Ww2ud3uZl3faKBcW1urI444Qh9++KEk6eCDD5YkffbZZwmUm51y7Tbl2KwEygAAAMhKvkBIHheBMgAAQCqoqqrSSy+9pOrqahmGoWg0qq+//lp33XVXk65vNFCePXu2JGnLli0Kh8Pq2rVryyrOQhaLRR6XPX4zEgAAACCb+Pyh+K/2AAAAYK7rrrtOeXl52rRpk/r27as1a9boV7/6VZOvb3SI2ddff62hQ4fq7LPP1ogRI3T66afriy++aFHR2cjttDNDGQAAAFnJFwjJw8gLAACAlLB161Y98sgj6tevny655BI988wz+vLLL5t8faOB8vTp0zV+/Hi99957ev/993XVVVfp9ttvb1HR2cjttDPyAgAAAFnJGwjJ7XSYXQYAAAAkderUSVLdLOXPPvtMxcXFCofDTb6+0UB5165dOuecc+LHI0eO1O7duxMoNbsx8gIAAADZKBSOqDYYYeQFAABAiujYsaMeffRR9ejRQy+88ILeeOMN1dTUNPn6RgPlSCSib7/9Nn5cVVWVUKHZrm7kRdDsMgAAAIA25QvUdbsw8gIAACA1TJ8+XQ6HQ71791aPHj1077336oYbbmjy9Y3elO+SSy7R+eefr8GDB8tisejll1/WmDFjWlR0NnI77fLXhBWJRmWzNprjAwAAABnBu7epwk2gDAAAkBLmzJmjuXPnSpImT56syZMnN+v6RgPlESNGqGvXrnr77bcVjUY1bdo09e3bN7Fqs5jbaZchqbomrHYu5scBAAAgO1TvHfvmYeQFAABASvj4449lGIYsFktC1zcaKI8aNUrLly9Xnz59EnoD1InNjKsOhAiUAQAAkDVi9xGhQxkAACA1FBUVaejQoTr66KOVn58ff/zmm29u0vWNBspOp1Pbt29XSUlJ4lVCnr13tfb6Q+rc0eRiAAAAgDbiI1AGAABIKb/85S/1y1/+MuHrGw2UA4GATjvtNJWUlMjlcsUfLy8vT/hNs1FsAx3bUAMAAADZwOev2//mEygDAACkhKuvvrpF1zcaKN90000tegPUic2MI1AGAABANvEGQnLm5ijHxo2pAQAAUkFpaek+H29qA3GjgfKyZcs0a9aseo9NmjRJxx13XJPeAHViHRmxu1wDAAAA2cAXCMlDdzIAAEDKuOWWW+J/DoVC+utf/6ouXbo0+fr9BsrTpk1TRUWF3n//fVVVVcUfD4fD2rx5c4LlZq9cu02OHCsdygAAAMgqPn8wfoNqAAAAmO/HjcJ9+/bVBRdcoKuuuqpJ1+83UB41apQ+//xzffrppxo0aFD8cZvNpmOOOSaxarOc22WPz5ADAAAAsoE3EFKBO9fsMgAAALAfu3fv1o4dO5r8/P0Gyj179lTPnj3Vt29flZSUtEpx2c7ttNOhDAAAgKxSHQipS6Hb7DIAAACw149nKG/dulXnn39+k69vdIbytm3bNHnyZH333XcyDCP+eFOHNON7HgJlAAAAZBlvIBS/nwgAAADM98MZyhaLRR06dNBhhx3W5OsbDZRvvfVWjRgxQkceeaQsFktiVUKS5HY5VPndHrPLAAAAANpEbSiiYCgqDzOUAQAAUsb//M//6KGHHtJtt92mL7/8UvPmzdP06dPVqVOnJl3faKCck5Ojyy67rMWFYu/IC2YoAwAAIEtU7/11npsOZQAAgJQxZcoUnXrqqZKkgw46SMcdd5ymTp2qBQsWNOl6a2NPOPzww/Xpp5+2rEpIqht54a8NKxyJml0KAAAAkHRefyxQdphcCQAAAGJ2796t0aNHS5Jyc3M1duxYVVZWNvn6RjuUN2/erJEjR+rAAw9Ubu73d2dmhnLzuff+1K+6JqwD8tlUAwAAILPF7h/CyAsAAIDUEYlEVFFRoeLiYknSzp076907rzGNBsplZWWJV4d6Yj/18/mDBMoAAABpory8XA8++KDC4bDGjBmjiy++uN75N998U/PmzZMk/fznP9f06dOVn5+vrVu3avLkydq1a5cOPfRQzZs3T/n5+dqzZ49uuOEGbd68WR06dNDdd9+twsJCMz5a0nkDQUmMvAAAAEglY8eO1dlnn62TTz5ZFotFa9as0Y033tjk6xsdeXHccccpLy9PX375pY455hjZ7XYdd9xxLSo6W8UD5QBzlAEAANJBRUWF5s+fr0WLFmnZsmVavHixNm3aFD+/Z88eTZkyRfPnz1d5ebm6d++u+fPnS5Juv/12XXTRRVqxYoV69OihP/7xj5Kku+++W71799Yrr7yic889VzNnzjTls7WF6kBY0ve/1AMAAID5Ro0apccff1xHHnmkevTooT/96U8qLS1t8vWNBsovvviipk6dqkcffVRer1e//vWvtWTJkhYVna0IlAEAANLLmjVr1KdPHxUUFMjlcmnQoEFasWJF/PxXX32lAw88UN26dZMknXLKKXr99dcVCoX03nvvadCgQZKkESNGxK9bvXp1fMM+bNgwvfXWWwqFMnN/6PUHZZGUn9foDyMBAADQRioqKvTss89q7NixOvHEEzV//vzWnaH81FNPafHixbrkkkvUsWNHvfjiixo/frzOO++8FhWejTyuujEXXgJlAACAtLBjx4564yiKioq0fv36+PEhhxyi7du365NPPlH37t31yiuvaOfOndq9e7fcbrdycuq224WFhaqoqGjwmjk5OXK73aqqqorPsGuKjh3drfHxmq2w0NOs50dkUb7TrpLiA5JUUXpo7rqhDuuWONYuMaxb4li7xLBuiWHdWu63v/2tTj31VEnSQQcdpOOOO06/+93vtGDBgiZd32igbLVa5XZ/v2Ht3LmzbDZbguVmN7ezbrl9fgJlAACAdBCNRmWxWOLHhmHUO27Xrp3mzJmjW265RdFoVOedd57sdnuD50lqcPzD17RaG/3hYD27dvkUjTb9ximtobDQo8pKb7OuqayqVn5eTrOvyySJrBtYt5Zg7RLDuiWOtUsM65YY1q15rFbLPhsRdu/erdGjR0uScnNzNXbsWC1btqzpr9vYEwoKCvTxxx/HN8AvvfSSDjgguzsMEmXPsSnXYWPkBQAAQJooKSmp9/O/yspKFRUVxY8jkYhKSkr03HPP6YUXXtAvfvELdenSRR06dJDX61UkEmlwXVFRkXbu3ClJCofDqq6uVkFBQdt9qDbk9YeYnwwAAJBiIpFI/NdzkrRz504ZRtObFRoNlH/3u99p8uTJ+uKLL3TSSSfpnnvu0c0335xYtZDHaZeXDmUAAIC00LdvX61du1ZVVVUKBAJauXKl+vXrFz9vsVg0btw4VVRUyDAMPfHEExoyZIjsdrt69+6tl19+WZK0bNmy+HX9+/ePd4C8/PLL6t27t+z2zAxdfYGQPE6H2WUAAADgB8aOHauzzz5bN954o2688Uadc845Gj9+fJOvb3TkxWGHHably5frq6++UiQS0aGHHpqxG962kO+006EMAACQJoqLi1VWVqbRo0crFApp1KhR6tWrlyZMmKBJkyapZ8+emj59usaPH69gMKgTTjhBl19+uSRp2rRpmjJlih588EF17txZf/jDHyRJ1157raZMmaKhQ4fK4/Fo3rx5Zn7EpPIFQupazJxDAACAVDJq1Cj16NFD//jHP2Sz2fQ///M/evLJJ+M3jm5Mk263bLPZdNhhh2nixIl6+OGHm1xceXm5HnzwQYXDYY0ZM0YXX3xxvfOvv/667rvvPhmGoYMPPlizZ8/O+HEaHqddvkDQ7DIAAADQRKWlpQ021z+8YcmAAQM0YMCABtcddNBBeuqppxo8XlBQoIceeqjV60w1hmEw8gIAACBFde7cWcFgUAsXLpTf79ell17a5GubFCjH7Nixo8nPraio0Pz58/Xiiy/K4XDoggsu0PHHH69u3bpJknw+n2677Ta98MILKi4u1j333KP77rsv48dpuF12Vez2m10GAAAAkFTBUFThSFQeJ4EyAABAqvjyyy/15z//WS+99JIOOugg1dTU6I033pDH0/RflTXrdtLNGc68Zs0a9enTRwUFBXK5XBo0aJBWrFgRPx8KhTRt2jQVFxdLko444ght27atOeWkJTcjLwAAAJAFvHt/lZdPoAwAAJASrrjiCl1yySWy2+168skn9Ze//EX5+fnNCpOlZgbKkyZNavJzd+zYocLCwvhxUVFRvbsHtm/fXmeccYYkqaamRo888ohOP/305pSTljxOuwK1EYUjUbNLAQAAAJIm1kRBhzIAAEBq+Oijj3TUUUfp8MMPV9euXSXV3WS6uRodebFz50598MEHOu200/T+++/rz3/+s6ZOnaru3bv/5HXRaLReQYZh7LNAr9er3/zmN+revbvOOeecZhXfsaO7Wc9vLYWFid9YpHNR3bW5rlx1aJfXWiWlhZasW7Zj7RLDuiWOtUsM65YY1i1xrB1Smc9fFygzQxkAACA1rF69WitXrtQzzzyjmTNnasCAAaqtrW326zQaKE+ZMkUnnXSS1q5dq7fffltjx47VjBkz9PTTT//kdSUlJVq3bl38uLKyUkVFRfWes2PHDl1++eXq06ePfve73zW7+F27fIpGmz6GozUUFnpUWelN/AX2diZ/vXm3IkXmBOJmaPG6ZTHWLjGsW+JYu8Swbolh3RLH2jWP1WoxrRkhW3n3dii76VAGAABICTk5ORoyZIiGDBmiTZs26dlnn1Vtba0GDhyoyy67TBdeeGGTXqfRkRfffvutxo4dq7feekvDhg3TiBEjFAgEGn3hvn37au3ataqqqlIgENDKlSvVr1+/+PlIJKIrr7xSgwcP1k033ZRQe3U6is2Q8zJHGQAAABks1qHscTlMrgQAAAA/1q1bN91888166623dPnll2vJkiVNvrbRDuVQKKRQKKS3335bd955pwKBgPx+f6MvXFxcrLKyMo0ePVqhUEijRo1Sr169NGHCBE2aNEnbt2/XRx99pEgkoldffVWS1KNHD82cObPJxaej2Aw5bswHAACATOYNhGSxSK7cRv/KAQAAAJM4nU6df/75Ov/885t8TaO7u9NOO00nnHCCfvGLX6hHjx4aNmyYhg0b1qQXLy0tVWlpab3HFixYIEnq2bOnPvnkkyYXmiliM+R8/qDJlQAAAADJUx0I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\n",
      "text/plain": [
       "<Figure size 1440x504 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_performance(loss=losses, accuracy=accuracies, log_file=f'{log_dir}/hopfield_base.pdf')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3 style=\"color:rgb(0,120,170)\">Adapt Hopfield-based Network</h3>\n",
    "<h3 style=\"color:rgb(208,90,80)\">We can now explore the functionality of our Hopfield layer.</h3>\n",
    "\n",
    "As described in the paper the Hopfield layer allows:\n",
    "- association of two sets\n",
    "- multiple updates\n",
    "- variable beta\n",
    "- changing the dimension of the associative space\n",
    "- pattern normalization\n",
    "- static patterns for fixed pattern search\n",
    "\n",
    "This time, additional arguments are set to influence the training as well as the validation performance of the Hopfield-based network.\n",
    "<br><br>\n",
    "<table>\n",
    "    <tr>\n",
    "        <th>Argument</th>\n",
    "        <th>Value (used in this demo)</th>\n",
    "        <th>Description</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>input_size</code></th>\n",
    "        <th>num_characters (20)</th>\n",
    "        <th>Size (depth) of the input (state pattern).</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>hidden_size</code></th>\n",
    "        <th>8</th>\n",
    "        <th>Size (depth) of the association space.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>num_heads</code></th>\n",
    "        <th>8</th>\n",
    "        <th>Amount of parallel association heads.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>update_steps_max</code></th>\n",
    "        <th>3</th>\n",
    "        <th>Number of updates in one Hopfield head.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>scaling</code></th>\n",
    "        <th>0.25</th>\n",
    "        <th>Beta parameter that determines the kind of fixed point.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>dropout</code></th>\n",
    "        <th>0.5</th>\n",
    "        <th>Dropout probability applied on the association matrix.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>...</code></th>\n",
    "        <th>default</th>\n",
    "        <th>The remaining arguments are not explicitly used in this example.</th>\n",
    "    </tr>\n",
    "</table>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [],
   "source": [
    "set_seed()\n",
    "hopfield = Hopfield(\n",
    "    input_size=latch_sequence_set.num_characters,\n",
    "    hidden_size=8,\n",
    "    num_heads=8,\n",
    "    update_steps_max=3,\n",
    "    scaling=0.25,\n",
    "    dropout=0.5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [],
   "source": [
    "output_projection = Linear(in_features=hopfield.output_size * latch_sequence_set.num_instances, out_features=1)\n",
    "network = Sequential(hopfield, Flatten(), output_projection, Flatten(start_dim=0)).to(device=device)\n",
    "optimiser = AdamW(params=network.parameters(), lr=1e-3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "losses, accuracies = operate(\n",
    "    network=network,\n",
    "    optimiser=optimiser,\n",
    "    data_loader_train=data_loader_train,\n",
    "    data_loader_eval=data_loader_eval,\n",
    "    num_epochs=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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25lyAAAAyB6zZ8/Wjh07JElLlizR7bffrtGjR8vn86myslKStGjRIq1evVpjxozR1q1bNXfu3BRGnN68/qAkydkDZg0CAAD0FJk/tCMNRDsmPL6AnHYWuwAAANnk5Zdfjv29bNmy2N+DBg3SM8880+b6AQMGaMWKFUmJLdPFCsp0KAMAAKQNOpS7getQETm64AUAAADQddH1tctuS3EkAAAAiKKg3A2iHRNeHwVlAACAVHnssV/rscd+neow0I2i62s6lAEAANIHBeVuEB1z4aFDGQAAAOg20fU1Y+UAAADSBzOUu0H0J3iNFJQBAECG8lXfftjXHRXXSpKaalYqsu/fbc7nnjFVln7HKbjrVQXf+csR7++IFSuW609/elHhcESnn16qUCgkt7tI3//+pZKkhQvna9SoMTr22GNVVXW3/H6/9u9v0GWXzdCFF07q8Ocgc3j9AZlMkiOPf20BAABIF3QodwOb1SxbjpkOZQAAgDj97W812rXrLS1b9oQef3yl6uvr1avXUXrppRckST5fo954Y4fKys5SdfV6TZ9+uR599Andf/9/66GH7k9x9EgUry8op90qs8mU6lAAAABwCP9TfzcwmUzqlW9jhjIAAMhY7XUS55VN+8rz1pPOlvWks+P+/K1b/6GdO9/Q5ZdfJklqbm5SUVGxAoFmffLJx9qx43WdeebZslqtuvrqufr737doxYrH9f7778nv98X9uUhvHn+QcRcAAABphoJyN+mVnxvbhRoAAACdE4mENXny9zVlSst4C4/HI4vFovx8pzZt2qg33tiuSy+dIUn65S8XyOXqpTPPPFvnnjsq1sWMnifaoQwAAID0wciLbtIr3yaPP5DqMAAAADLSqaf+P73wwvPy+XwKhUK69tqf6ZVXNmnUqNF6+eUX9cknH6uk5BRJ0muv/UOzZv1IZ589XH/7W40kKRwOpzB6JIq3iYIyAABAuqFDuZv0yrfps73eVIcBAACQkc46a5jee+8d/fCHMxSJhHX66WU6//xxMplMOuqoAp188hCZDs3RnTlztq68cpZyc2064YQT1b//0frss90pfgIkgtcX1AlH90p1GAAAAPgPFJS7Sa98GyMvAAAAumDGjFmaMWNWm9fvv/+/Wx1PmXJpbDTGf7r88isSFhuSzzAMef1BOe22VIcCAACA/8DIi27SK9+mxqaQwpFI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kSP1u9/9Tv3799dVV13V7r0d2mb5/fff19NPP63f//73OuWUUzRhwgS9+uqr+ulPf6qlS5d2+QGylcthkyGpsSmkXg42KAEAAEDP1HhozBsjLwAAAFJvxIgRKigo0NSpU3X33XcrLy9PknTSSSdp1apV7d7fbkH5+9//vj7++GNNnDhRzzzzjIqLiyVJw4cPV2lpaRfDz27Rn/x5fUEKygAAAOixovuGOFnzAgAApNw999yjk046Sfn5+QoEAtq3b5/69u0rSdq0aVO797c78mLq1Kn605/+pHnz5sWKyZJkNpv1pz/9qQuhI1ZQZmM+AAAA9GBe36GCcl6HfiAJAACABNqzZ48uuugiSdKnn36qsWPH6uWXX+7w/e2u6M4//3ytWrVKf/nLX2SxWDRixAhNnDhRkpSfnx9n2JC+KCh7fBSUAQAA0HN56VAGAABIG//93/+tJ554QpL09a9/XWvXrtVVV12l733vex26v92C8q233qr33ntP48ePl2EYevbZZ/Xvf/9b8+bN61rkkMsR7VBmc0MAAAD0XLGRF8xQBgAASLlIJNJqEkX//v0ViUQ6fH+7BeW//vWv+sMf/iCrtWXxd8EFF+iCCy6goNwN8hl5AQAAgCzg9bU0UFBQBgAASL0+ffrod7/7nSZNmiSTyaS1a9eqX79+Hb6/3RnKffr0UTgcjh2bTCb16tUrvmjRSq7VIpvVzMgLAAAA9Ggef1B5NousOe3+6wcAAAASbPHixVq9erVKSkpUUlKi1atXa9GiRR2+v90O5UGDBmnq1KmaMGGCLBaLnn/+efXu3VuPP/64JOkHP/hB/NFDLruVDmUAAAD0aF5/kO5kAACANHH88cdrzZo1OnDggCwWi5xOZ6fub7eg3NzcrJNOOklvvvmmJOmYY46RJL3zzjtxhIsvc9ptFJQBAADQo3n9wdj+IQAAAEithoYGPffcc2psbJRhGIpEIvroo490zz33dOj+dgvKt99+uyTp008/VSgU0nHHHde1iNGK00GHMgAAAHo2ry8oJwVlAACAtDB37lzl5eXpvffeU1lZmWpqavTd7363w/e3O8Tso48+0tixY3XhhRdqwoQJGjlypN5///0uBY0vuOxWeZmhDAAAgB7M6w/KxcgLAACAtLB792498sgjGjZsmC699FL99re/1QcffNDh+9stKC9evFizZs3S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GDFC48eP1/jx4w+b22x12WWXaezYsbHcvP76663O851r6+mnn47la/z48frud7+rxYsXt7qG71xrXq9X48aN0yeffCJJqqmpUUVFhUaNGqWqqqrD3rN7925NmzZNo0eP1pVXXqnGxsZkhpw2vpy7VatWady4caqoqNC1116rQCDQ5p61a9fqrLPOin3/jpTjnuzLebv22ms1atSoWE5efPHFNvfwnWudt82bN7f6Z11paamuuOKKNvfwfUNnsNaNH+vd+LDWjQ/r3c5jvRsf1rrxYa0bP9a7GcJAh+3Zs8cYMWKEsX//fqOxsdGoqKgw3n333VbXjB071vjnP/9pGIZhXHvttcbKlStTEGl6+etf/2pccsklRnNzsxEIBIzKykpj48aNra654oorjP/93/9NUYTpKxKJGGeddZYRDAaPeA3fua/2zjvvGOedd56xb9++Vq/znfvC//3f/xnjxo0zTj75ZOPjjz82/H6/cc455xj//ve/jWAwaMycOdN45ZVX2tz3wx/+0Pj9739vGIZhPPjgg8Zdd92V7NBT7su5++CDD4zzzjvP8Hg8RiQSMa655hrj8ccfb3Pf4sWLjerq6uQHnCa+nDfDMIxx48YZtbW1X3lftn/nDpe3qLq6OuPcc881/vWvf7W5L9u/b+g41rrxY70bH9a63YP1bvtY78aHtW58WOvGj/Vu5qBDuRNqampUWlqqgoICORwOlZeXa8OGDbHzn376qZqamnTKKadIkiZMmNDqfLZyu91asGCBbDabrFarTjjhBO3evbvVNW+88YZ+/etfq6KiQosXL1Zzc3OKok0vH3zwgSRp5syZuuCCC/Tkk0+2Os93rn033nij5s2bpz59+rR6ne/cF1avXq1FixapsLBQkrR9+3Ydd9xxOvbYY5WTk6OKioo236tgMKjXXntN5eXlkrL3u/fl3NlsNi1atEhOp1Mmk0nf/OY32/zzTpJ27NihtWvXqqKiQj//+c914MCBZIeeUl/Om9/v1+7du3XdddepoqJC999/vyKRSKt7+M61zdt/uuuuuzRlyhQdf/zxbc5l+/cNHcdaN36sd+PDWrd7sN5tH+vd+LDWjQ9r3fix3s0cFJQ7oa6uTm63O3ZcWFio2traI553u92tzmerE088MbYI/PDDD/XHP/5R55xzTux8Y2OjvvWtb2n+/Plau3atDh48qIcffjhF0aaXgwcP6owzztBDDz2k5cuX63e/+53++te/xs7znftqNTU1ampq0vnnn9/qdb5zrd16660aOnRo7Li9f9ZJ0v79++V0OpWTkyMpe797X87dgAEDdOaZZ0qSGhoatHLlSp177rlt7nO73brqqqv03HPPqX///m1+otrTfTlve/fuVWlpqW677TatXr1aW7du1TPPPNPqHr5zbfMW9eGHH+of//iHKisrD3tftn/f0HGsdePHejc+rHW7jvVux7DejQ9r3fiw1o0f693MQUG5EyKRiEwmU+zYMIxWx+2dz3bvvvuuZs6cqWuuuabV/6KUn5+vZcuW6YQTTlBOTo5mzpypzZs3py7QNPKd73xHd911l1wul/r06aNJkya1yg3fua/2u9/9Tj/4wQ/avM537qt15Ht1uNf47n2htrZW06dP18SJE3X66ae3Of/QQw/pu9/9rkwmk2bNmqVXX301BVGmj2OPPVYPPfSQCgsLZbfbddlll7X57yTfuSNbtWqVpk6dKpvNdtjzfN/QUax1u471buew1u061rvxYb3bNax1O4e1btex3k0/FJQ7obi4WPX19bHj+vr6Vm34Xz6/d+/ew7bpZ6Nt27ZpxowZ+tnPfqaLLrqo1bndu3e3+l/nDMOI/a9y2W7r1q3asmVL7PjLueE7d2SBQECvvfaavve977U5x3fuq7X3zzpJ6tOnjzwej8Lh8BGvyVbvv/++pkyZoosuukg//vGP25z3eDxavnx57NgwDFksliRGmH527dqlF154IXZ8uP9O8p07sk2bNmnMmDGHPcf3DZ3BWrdrWO92HmvdrmG9Gz/Wu/Fjrdt5rHW7jvVu+qGg3AllZWXasmWLGhoa5Pf7tXHjRg0bNix2fsCAAcrNzdW2bdskSevXr291Plt99tln+vGPf6wlS5Zo7Nixbc7n5eXp7rvv1scffyzDMLRy5Uqdd955KYg0/Xg8Ht11111qbm6W1+vV2rVrW+WG79yR7dq1S8cff7wcDkebc3znvtp//dd/6V//+pc++ugjhcNh/f73v2/zvbJarRo6dKief/55SdK6dev47qllR+LLL79cP/3pTzVz5szDXuNwOPToo4/GdrF/8skns/77ZxiGbrvtNh04cEDBYFCrVq1qkxO+c4fX0NCgpqYmHXvssYc9z/cNncFaN36sd+PDWrdrWO/Gj/VufFjrxoe1btew3k1PFJQ7oaioSPPmzVNlZaUuvPBCjRs3TiUlJZo9e7Z27NghSVqyZIluv/12jR49Wj6f74jzXbLJY489pubmZt1xxx0aP368xo8fr9/+9rexvPXp00eLFy/WlVdeqdGjR8swjMP+bCsbjRgxQuecc44uvPBCTZw4URMnTtR3vvMdvnMd8PHHH6u4uLjVa3znOiY3N1d33HGHfvKTn2jMmDH6xje+odGjR0uSFi5cqE2bNkmSFi1apNWrV2vMmDHaunWr5s6dm8Ko08Mzzzzz/7dz965RpAEYwJ/NZpdUosFKYqOgCdgIafwIpBVjJfiBRRBBFLtAFEHwaxEJKSJLWiUgBC0EiX+BIJIykMhiYaWdoKAgJGH3iuM8vPPOISq7q79fOQyz77sMw8Mz8755+/Zt7t279/l5d+fOnSR//3flcjkzMzO5du1aDh06lJWVlUxOTrZ55O01ODiYs2fP5uTJkzl8+HCGhoYyNjaWxD33La9fv/7Xsy5xv7Exsu7GybsbI+t+H3l34+TdjZF1N0bW/T7ybmcqtVqtVrsHAQAAAABA5/OFMgAAAAAAhSiUAQAAAAAoRKEMAAAAAEAhCmUAAAAAAApRKAMAAAAAUEhvuwcAQDG7d+/Orl270tPz5bvA2dnZDAwM/PDfev78efr7+3/odQEA4L/IuwDdQaEM0EXm5uaEXgAAflnyLkDnUygD/AIWFxczPT2dbdu25dWrV+nr68vt27ezc+fOfPjwIdevX0+j0UipVMrIyEgmJibS29ubpaWl1Gq1fPr0KZVKJRcvXsy+ffuSJPV6PUtLS3n//n3OnDmTU6dOtXmWAAD8ruRdgM6hUAboIuPj418sARwYGMjs7GySZHl5OZcuXcrw8HDm5+czOTmZR48epVarZfPmzVlYWMja2lrOnz+fu3fv5vTp07lw4UJqtVpGR0ezvLycy5cv5/Hjx0mS7du35+rVq3nx4kWOHz+eY8eOpVKptGXeAAD8HuRdgM6nUAboIv+3BHBwcDDDw8NJkqNHj+bGjRt59+5dnj59mvn5+ZRKpVSr1Zw4cSJzc3M5cOBAenp6Mjo6miTZs2dPFhYWPl9vbGwsSTI0NJTV1dV8/PgxW7Zs+bkTBADgtybvAnS+nm+fAkA3KJfLXz3WbDZTKpU+H2s2m1lfX0+5XP7ieJK8fPky6+vrSZLe3j/fOf51TqvV+llDBwCAb5J3ATqDQhngF9FoNNJoNJIkDx48yN69e7Np06YcPHgw9+/fT6vVyurqah4+fJj9+/dnx44dKZVKefbsWZJkZWUl4+PjaTab7ZwGAAB8lbwL0BlseQHQRf65p1ySTExMpK+vL1u3bs3MzEzevHmT/v7+TE1NJUmuXLmSWq2WI0eOZG1tLSMjIzl37lyq1Wrq9Xpu3bqVqampVCqV1Ov1VKvVdkwNAADkXYAuUGpZ0wHQ9RYXF3Pz5s08efKk3UMBAIAfTt4F6By2vAAAAAAAoBBfKAMAAAAAUIgvlAEAAAAAKEShDAAAAABAIQplAAAAAAAKUSgDAAAAAFCIQhkAAAAAgEIUygAAAAAAFPIHwduFeyp2aQkAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 1440x504 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_performance(loss=losses, accuracy=accuracies, log_file=f'{log_dir}/hopfield_adapted.pdf')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h2>Hopfield-based Pooling</h2>\n",
    "\n",
    "The previous examples manually downprojected the result of <code>Hopfield</code> by applying a linear layer afterwards. It would've also been possible to apply some kind of <i>pooling</i>. Exactly for <i>such</i> use cases, the module <code>HopfieldPooling</code> might be the right choice. Internally, a <i>state pattern</i> is trained, which in turn is used to compute pooling weights with respect to the input."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "set_seed()\n",
    "hopfield_pooling = HopfieldPooling(\n",
    "    input_size=latch_sequence_set.num_characters)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "output_projection = Linear(in_features=hopfield_pooling.output_size, out_features=1)\n",
    "network = Sequential(hopfield_pooling, output_projection, Flatten(start_dim=0)).to(device=device)\n",
    "optimiser = AdamW(params=network.parameters(), lr=1e-3)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3 style=\"color:rgb(0,120,170)\">Operate Hopfield-based Pooling</h3>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "losses, accuracies = operate(\n",
    "    network=network,\n",
    "    optimiser=optimiser,\n",
    "    data_loader_train=data_loader_train,\n",
    "    data_loader_eval=data_loader_eval,\n",
    "    num_epochs=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAABZQAAAHsCAYAAABFbSiOAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjMuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/d3fzzAAAACXBIWXMAAAsTAAALEwEAmpwYAACGpElEQVR4nOzdeXhU9d3//9esyUxmMCxZEK1YsVKFaC23ICJgVZAlooiKYJEiuN0Vza/SxrqAuFAtGpciVuytdauiskiriEvdCq3gtxVwrbVaFQgBIsxkJpkzM+f3RzKjacAkQ2Z/Pq6rlzlzzpl5nw+57+vw4j3vYzFN0xQAAAAAAAAAAO2wprsAAAAAAAAAAEB2IFAGAAAAAAAAAHQIgTIAAAAAAAAAoEMIlAEAAAAAAAAAHUKgDAAAAAAAAADoEAJlAAAAAAAAAECHECgDAAAAAAAAADrEnu4CkqG+vkHRqJnSz+zZ06OdO/0p/cxcwLolhnVLDOuWGNYtMaxbYli3xLBunWO1WtS9e1G6y+gyqb735fctcaxdYli3xLBuiWHdEsO6JYZ1Swzr1nHJuu/NyUA5GjVTHijHPhedx7olhnVLDOuWGNYtMaxbYli3xLBu+Ssd9778viWOtUsM65YY1i0xrFtiWLfEsG6JYd3Si5EXAAAAAAAAAIAOIVAGAAAAAAAAAHRITo68AAAAQFuRSFj19XUKh0PpLiUl7Hanuncvkc3GLS8AAADQVbi7BgAAyBP19XUqLHSrqKhcFosl3eUklWmaamjYo/r6OvXq1Tvd5QAAAAA5g5EXAAAAeSIcDqmoqFvOh8mSZLFYVFTULW+6sQEAAIBUIVAGAADII/kQJsfk07UCAAAAqUKgDAAAAAAAAADoEAJlAAAApJzf79fVV1/V4eM/+OA9/epXNyaxIgAAAAAdwUP5AAAAkHI+3x79858fdvj4/v2PVHX1kUmsCAAAAEBHECgDAAAg5e6889fasaNOV199lT777N864IBiFRQU6Oabb9OCBTeqrm67duyo06BBx6m6+jr9/e9v6//+73795jf366c/vUhHHnmU3nnnH/rqq3pdeeUcHX/8Cem+JAAAACAvECgDAADkob9s2qo3N25NynsPq+itEwb2/tZjrrxyji6//GLNnv3/6eyzT9dTT92j3r0P1Isvrtbhh39PN910qwzD0Pnnn60PP/ygzfmGEdZvf/ug3nzzdS1ZsphAGQAAAEgRAmUAAACkVffuPdS794GSpFNPPU3vvbdZS5c+rk8//bd2796tYDDQ5pzBg4+XJH33u4fJ59uT0noBAACAfJbUQHnVqlVavHixwuGwLrjgAk2dOnWvx7366quaP3++XnnlFUnSli1bNGfOHO3cuVOHHnqoFi5cqKKiomSWCgAAkFdOGNh+F3GqFBQUxH9++ukn9Oqrr+j008/UpEnH6d///pdM02xzjtPplCRZLJa97gcAAACQHNZkvXFtba1qamr0+OOPa8WKFXryySf18ccftzlux44duvXWW1u9dsMNN2jKlClavXq1BgwYoHvvvTdZZQIAACANbDabIpFIm9fXr/+bTj99okaNGqNQKKR//vMjRaPRNFS4b36/X+PHj9cXX3zRZt/777+viRMnavTo0brmmmsUDoclNTdMTJ06VaeddpouvfRSNTQ0SJL27Nmjiy66SGPGjNHUqVNVV1eX0msBAAAAOitpgfLatWs1ZMgQFRcXy+12a/To0Vq9enWb46699lr99Kc/jW8bhqH169dr9OjRkqSJEyfu9TwAAABkrx49eqqsrFy33HJDq9fPOWeKHnzwfk2bdq7uuut2DRhQoa1bt6SpyrbeeecdnXfeefr000/3un/OnDm6/vrr9cILL8g0TS1dulTSvhsm7rzzTg0aNEjPP/+8zj77bN18882puhQAAAAgIUkbebF9+3aVlJTEt0tLS7Vx48ZWxzz88MM68sgjdfTRR8dfq6+vl8fjkd3eXFpJSYlqa2s79dk9e3r2o/LElZR40/K52Y51SwzrlhjWLTGsW2JYt8SwbonpyLpt326V3Z60foJOsdudeuCBh9q8PnjwYD311Iq9nnPcccdJku6774H4awcffJBWrPjTPj/HarV26e/U0qVLNXfuXP385z9vs+/LL79UY2OjjjnmGEnNjRF33323zj77bK1fv16LFi2Kv37++edrzpw5evXVV/XYY49JksaPH6/58+fLMAw5HI4uqxkAAADoSkkLlKPRqCwWS3zbNM1W2x999JHWrFmjhx56SNu2bdvncZLabLdn506/otHUzdJ79i//1ncP7q4B3ylO2WfmipISr+rqfOkuI+uwbolh3RLDuiWGdUsM65aYjq5bNBpVOJxZ4yOSLRqNtlkbq9WScAPCt3UQ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7TXddNNNWrNmjcaNG6eHH35YH3zwQbtvPHToUK1bt067du1SMBjUmjVrNHz48Pj+SCSiSy65RGPGjNE111wT7152u9164IEH9M4770iSHn300U53KGcym9WqokK7/AECZQAAAOQ3PyMvAAAAsk6HRl64XC6tXbtW5557riQpFAq1e05ZWZmqqqo0bdo0GYahSZMmqaKiQrNmzdLs2bO1bds2vffee4pEInrhhRckSQMGDNDNN9+sO++8U/PmzVNjY6P69u2r2267bT8uMfMUuRzyBdtfQwAAACBXhSNRBZrCBMoAAABZpt1AuXv37po3b542b96su+66SwsXLmwzumJfKisrVVlZ2eq1JUuWSJIGDhy4z07nQYMGafny5R36jGzkdTkYeQEAAIC81tAYliQCZQAAgCzT7siLW2+9VaWlpfrtb38rl8sli8WiW2+9NRW15SyPy8HICwAAAOQ1f6D5G3teN4EyAABANmm3Q7lXr16aNm2aPB6P3nvvPR122GE64IADUlFbzvK4HfrPdn+6ywAAAADSJvaNPTqUAQAAsku7gfJdd92l//znP/rZz36mmTNnql+/flq/fr1uvvnmVNSXk7wupxoYeQEAAIA8RqAMAACQndodefHaa6/ppptu0po1azRu3Dg9/PDD+5x9jI7xuB0KhaNqMiLpLgUAAABICx+BMgAAQFZqN1CWJJfLpbVr12rIkCGSpFAolNSicl3sppk5ygAAAMhXsXthAmUAAIDs0m6g3L17d82bN0+bN2/W0KFDtXDhQpWWlqaitpzljQXKjL0AAABAnvIHDRU4bHI6bOkuBQAAAJ3QbqB86623qrS0VPfff79cLpcsFotuvfXWVNSWs4paAmVfkE5vAAAA5Cd/0KA7GQAAIAu1+1C+Xr16acKECXrrrbf0/vvva9KkSerVq1cqastZXjcjLwAAAJDfCJQBAACyU7sdym+88YbOOussvfTSS3r55Zc1adIkvfTSS6moLWd54h3KBMoAAADIT76AIY+bQBkAACDbtNuhfNddd+nRRx9Vv379JEn//Oc/NWfOHJ1yyilJLy5XFRU6ZJHUQKAMAACAPOUPhlTW3ZXuMgAAANBJ7XYoG4YRD5Ml6fDDD1ckEklqUbnOarWoyOWgQxkAAAB5i5EXAAAA2andQLmwsFCbNm2Kb2/atEkuF50E+8vjcjBDGQAAAHkpHIkq2BQhUAYAAMhC7Y68mDNnji655BIdcsghslgs+uSTT3TXXXelorac5nE75KdDGQAAIKusWrVKixcvVjgc1gUXXKCpU6e22v/aa69p4cKFkqTvfe97mj9/voqKivT2229rwYIFMgxDxcXFuuWWW9SnTx+99dZbuvzyy1VeXi5JOvLII7VgwYKUX1eqxUa/MUMZAAAg+7QbKA8aNEh/+tOf9M477ygajeqYY45R9+7dU1FbTvMUOrRjd2O6ywAAAEAH1dbWqqamRsuWLZPT6dTkyZM1ePDg+Hi4PXv2qLq6Wo888oj69eunJUuWqKamRtdee63mzJmje++9V/3799fTTz+tm266SYsXL9bmzZs1Y8YMXXzxxWm+utSKjX6jQxkAACD7tDvyQpKKi4s1YsQInXTSSerevbvOO++8ZNeV85o7lEPpLgMAAAAdtHbtWg0ZMkTFxcVyu90aPXq0Vq9eHd//6aef6sADD4wHzCeddJJeeuklhUIhXXHFFerfv78k6YgjjtDWrVslNY+Te/PNN1VZWalLLrkk/nqui41+8xIoAwAAZJ0OBcr/7cMPP+zqOvKO19U88sI0zXSXAgAAgA7Yvn27SkpK4tulpaWqra2Nb/ft21fbtm3TBx98IEl6/vnntWPHDjmdTk2YMEGSFI1G9Zvf/EannHKKJMnr9erHP/6xVq1apREjRqiqqiqFV5Q+/vjIC2eaKwEAAEBntTvyAsnhcTsUjphqDEXkKuCPAQAAINNFo1FZLJb4tmmarba7deumW2+9Vdddd52i0ajOOeccORxfd+CGQiFVV1crHA7HR1zMnz8/vv+8887T7bffLp/PJ6/X2+G6evb07M9lJaSkpOP17dXHOyVJhxxUrJ4H5NcDv/d77fIU65YY1i0xrFtiWLfEsG6JYd3SiyQzTWLz4hqCBoEyAABAFigvL9eGDRvi23V1dSotLY1vRyIRlZeX66mnnpIkbdy4UQcffLAkqaGhQZdeeqmKi4u1ePFiORwORaNR/fa3v9VFF10km80Wf59v/twRO3f6FY2m7ltvJSVe1dX59us9tm5vPr8p0KS6ULgrysoKXbF2+Yh1SwzrlhjWLTGsW2JYt8Swbh1ntVqS0nywzyTzpptu2uvrpmnKMIwuLyTfeF3NX+/zBQ31Ks6vrgwAAIBsNHToUN1zzz3atWuXXC6X1qxZoxtvvDG+32KxaMaMGXrqqadUWlqqhx56SGPHjpUkzZkzR4cccohuuOEGWa3NU+esVqtefPFFHXLIIRo7dqxWrFiho48+Wm63Oy3Xl0r+gKECp00Oe+fCcwAAAKTfPgPl4uLifZ6Ub0+hTgaPu7lDOTY/DgAAAJmtrKxMVVVVmjZtmgzD0KRJk1RRUaFZs2Zp9uzZGjhwoObPn6+ZM2cqFArp+OOP14UXXqj33ntPL7/8svr166czzzxTUvP85SVLlsRHZCxatEg9evTQbbfdluarTA1/MMQD+QAAALLUPgPln/70p6msI+/EbqBjT7gGAABA5qusrFRlZWWr15YsWRL/eeTIkRo5cmSr/UceeeQ+H2p9+OGH64knnujyOjOdPxhWEYEyAABAVrKmu4B8FbuB9tGhDAAAgDxDhzIAAED2IlBOE3ehXRZL8800AAAAkE98ASM+Ag4AAACpVV9fv1/ntxsoh8P589TlVLJaLPK4HIy8AAAAQN7xBw156FAGAABIi3HjxulnP/uZNmzYkND57QbKJ510kmpqavTll18m9AHYN4/LwcgLAAAA5JVwJKrGUISRFwAAAGnyyiuvaOjQobrttttUWVmpxx57TH6/v8PntxsoL126VDabTeeff74uvvhivfrqqzJNc7+KRjOvy6EGAmUAAADkEX/L/S8dygAAAOlRWFios846S0uXLtW1116r//u//9OJJ56oG264oUPjMNoNlHv37q3Zs2fr5Zdf1tlnn60bb7xRJ598sh544AGFQsz/3R8et5MOZQAAAOSV2Mg3j9uZ5koAAADy1+uvv67LL79cVVVVOuWUU/TEE0+od+/euuyyy9o9196RD/jXv/6lp556Sn/84x91zDHHaOLEiXrjjTd0xRVXaPHixft9AfnK43LoX18SKAMAACB/+OhQBgAASKuTTjpJxcXFmjJlin7961+rsLBQknTEEUfoySefbPf8dgPl8847T59//rnOOussPf300yovL5ckjRw5UkOGDNnP8vOb1+2QP2jINE1ZLJZ0lwMAAAAkXWzkGzOUAQAA0uP222/XEUccoaKiIoVCIe3cuVM9e/aUJL388svtnt/uyIspU6boz3/+s6qqquJhsiRZrVb9+c9/3o/SUVToUCRqKtgUSXcpAAAAQErEOpSLCJQBAADSYtu2bTrzzDMlSV9++aXGjRunV155pcPnt9uhPGbMGD355JN68803ZbPZdNJJJ+mss86SJBUVFSVYNqTmDmVJ8gdDchd2aPoIAAAAkNX8gebnsDDyAgAAID3uu+8+Pfzww5KkQw89VMuXL9dll12mH/3oRx06v90U8+abb9bHH3+sCRMmyDRNPfPMM/rPf/6jqqqq/asc8ZtoX9BQafc0FwMAAACkgC9oqNBpk8Pe7pclAQAAkATRaLTVJIrevXsrGo12+Px2A+W//OUv+tOf/iSHozn8PP3003X66acTKHcBT0uHcmyOHAAAAJDr/EGD7mQAAIA06tGjh5544glNmjRJFotFy5cvV69evTp8frttAT169FAk8vWMX4vFom7duiVWLVqJPYjEFyBQBgAAQH4gUAYAAEiv+fPna+nSpaqoqFBFRYWWLl2quXPndvj8djuU+/fvrylTpmjixImy2Wx67rnn1L17dz344IOSpJ/85CeJV5/nPC6npOabagAAACAf+ANG/Jt6AAAASL2+fftq2bJl2r17t2w2mzweT6fObzdQbmpq0hFHHKF3331XknTQQQdJkj766KMEysU3uQpsslktBMoAAADIG/6god493ekuAwAAIG/t2rVLzz77rBoaGmSapqLRqD777DPdfvvtHTq/3UB5wYIFkqQvv/xS4XBYhxxyyP5VjDiLxaIil4ORFwAAAMgbvqAR/6YeAAAAUu/KK69UYWGhPv74Yw0dOlRr167VD3/4ww6f3+4M5c8++0zjxo3TGWecoYkTJ+qUU07Rv/71r/0qGl/zuhx0KAMAACAvGOGomkIRRl4AAACk0ZYtW3T//fdr+PDhOv/88/WHP/xBn3zySYfPbzdQnj9/vmbOnKn169fr7bff1qWXXqobbrhhv4rG1zwuh/yBULrLAAAAAJIu1kjBQ/kAAADSp1evXpKaZyl/9NFHKisrUzgc7vD57QbKO3fu1JlnnhnfPuuss1RfX59Aqdgbj9shHx3KAAAAyAOxQNlLoAwAAJA2PXv21AMPPKABAwbomWee0SuvvKLGxsYOn99uoByJRPTVV1/Ft3ft2pVQodg7r8uhBgJlAAAA5IHYN/PoUAYAAEif+fPny+l0atCgQRowYIDuvvtuXXXVVR0+v92H8p1//vk699xzNWbMGFksFj333HO64IIL9qtofM3jdsgfDCtqmrJaLOkuBwAAAEia2DfzmKEMAACQPrfeeqtuu+02SdKcOXM0Z86cTp3fbofyxIkTdcMNN8gwDDU2Nmru3LmaMmVKh9581apVGjt2rEaNGqXHHnuszf6XXnpJEyZM0Omnn67LLrtMu3fvltQ8GHrq1Kk67bTTdOmll6qhoaFTF5VNPC6noqapYFPH55QAAAAA2aiBGcoAAABp9/7778s0zYTPb7dDedKkSVq5cqWGDBnSqTeura1VTU2Nli1bJqfTqcmTJ2vw4MHq16+fJMnv92vevHl65plnVFZWprvuukv33HOPrr32Wt1www2aMmWKxo0bp0WLFunee+/tdFKeLWLz4/wBQ0WF3FgDAAAgd/kIlAEAANKutLRU48aN09FHH62ioqL469dee22Hzm+3Q9nlcmnbtm2dLmzt2rUaMmSIiouL5Xa7NXr0aK1evTq+3zAMzZ07V2VlZZKkI444Qlu3bpVhGFq/fr1Gjx4tqblD+pvn5ZqilptpHswHAACAXOcPGHIV2GS3tfvXEAAAACTJD37wA40dO1Z9+vRRcXFx/H8d1W6HcjAY1Mknn6zy8nK53e7466tWrfrW87Zv366SkpL4dmlpqTZu3Bjf7t69u0499VRJUmNjo+6//379+Mc/Vn19vTwej+z25tJKSkpUW1vb4QuSpJ49PZ06vquUlHg7fc7BweZRFzaHPaHzc0G+Xvf+Yt0Sw7olhnVLDOuWGNYtMawbsoE/aNCdDAAAkGY//elP9+v8dgPla665JqE3jkajsnzjIXOmabbajvH5fPrf//1f9e/fX2eeeaZqa2vbHLe3877Nzp1+RaOJzwFJREmJV3V1vk6fF25q7kz+YttuHVpa1M7RuSfRdct3rFtiWLfEsG6JYd0Sw7olhnXrHKvVkrYGhHzXHCg7010GAABAXqusrNzr6+01EMe0GyivWLFCt9xyS6vXZs+ereOOO+5bzysvL9eGDRvi23V1dSotLW11zPbt23XhhRdqyJAh+uUvfylJ6tGjh3w+nyKRiGw2217PyyWxDg0/Iy8AAACQ43xBQ93cBMoAAADpdN1118V/NgxDf/rTn3TwwQd3+Px9Bspz585VbW2t3n77be3atSv+ejgc1ueff97uGw8dOlT33HOPdu3aJZfLpTVr1ujGG2+M749EIrrkkks0ZswYXXbZZfHXHQ6HBg0apOeee06VlZVasWKFhg8f3uELyjaFTpvsNguBMgAAAHKeP2DowJ759608AACATPLfjcJDhw7V5MmTdemll3bo/H0GypMmTdI///lPffjhh/EH5EmSzWbTMccc0+4bl5WVqaqqStOmTZNhGJo0aZIqKio0a9YszZ49W9u2bdN7772nSCSiF154QZI0YMAA3XzzzZo7d66qq6u1ePFi9e7dW3fccUeHLiYbWSwWeVwO+QMEygAAAMht/qAhr5sZygAAAJmkvr5e27dv7/Dx+wyUBw4cqIEDB2ro0KEqLy9PqJjKyso2MzmWLFkSf/8PPvhgr+f16dNHjzzySEKfmY08LicdygAAAMhpRjiiJiPCQ/kAAADS7L/z2i1btujcc8/t8PntzlDeunWr5syZo927d8s0v37QXUeHNKN9HpddPgJlAAAA5DB/MCxJBMoAAABp9s0ZyhaLRT169NBhhx3W4fPbDZSvv/56TZw4UUceeaQsFktiVeJbedxOfbHdn+4yAAAAgKTxBUKSCJQBAADS7Tvf+Y7uu+8+zZs3T5988okWLlyo+fPnq1evXh06v91A2W636yc/+cl+F4p987ocjLwAAABATovd7zJDGQAAIL2qq6v1ox/9SFLz6OHjjjtOV199dXxUcXus7R1w+OGH68MPP9y/KvGtPC6HGoKGolGz/YMBAACALBQLlOlQBgAASK/6+npNmzZNklRQUKDp06errq6uw+e326H8+eef66yzztKBBx6ogoKC+OvMUO46HrdDpqRAU5gbbAAAAOSkeKDsdqa5EgAAgPwWiURUW1ursrIySdKOHTtaPTuvPe0GylVVVYlXhw7xtoTIvkCIQBkAAAA5yR9oDpSLCtv9KwgAAACSaPr06TrjjDN04oknymKxaO3atfr5z3/e4fPbvZs77rjjtHHjRr333nuaOHGi3n33Xf3gBz/Yr6LRmqdljhxzlAEAAJCrfEFDrgK77LZ2p+4BAAAgiSZNmqQBAwbor3/9q2w2m2bOnKnDDz+8w+e3eze3bNkyXX311XrggQfk8/l02WWXaenSpftVNFrzupq/9hfr2gAAAAByjT9oxL+ZBwAAgPSpra3VE088oenTp+uEE05QTU1Np2YotxsoP/LII3ryySfl8XjUs2dPLVu2TL///e/3q2i0VuRqbhT30aEMAACAHOUPGvFv5gEAACB9fvGLX+i73/2uJKlPnz467rjj9Mtf/rLD57cbKFutVnk8nvh27969ZbPZEigV+xLvUCZQBgAAQI7yBwyeFwIAAJAB6uvrNW3aNElSQUGBpk+f3rUdysXFxXr//fdlsVgkSc8++6wOOOCABMvF3jgdVjnsVkZeAAAAIGf5gzyAGgAAIBNEIhHV1tbGt3fs2CHTNDt8frsP5fvlL3+pK664Qv/5z380bNgwFRQU6N57702sWuyVxWKRx+WQLxhKdykAAABAUviCdCgDAABkgunTp+uMM87QiSeeKElat26dfv7zn3f4/HYD5cMOO0wrV67Up59+qkgkokMPPVQOBzeCXc3rcqghGE53GQAAAECXCxkRhYyovMxQBgAASLtJkyZpwIAB+utf/yqbzabvfOc7evjhh1VZWdmh89sdeSFJNptNhx12mG6//XbC5CTxuOlQBgAAQG6KPSuEDmUAAIDM0Lt3b4VCIT3wwAP6/e9/H+9W7oh2O5S/afv27Z0uDh3jcTm0c3djussAAAAAuhyBMgAAQGb45JNP9Pvf/17PPvus+vTpo8bGRr3yyivyer0dfo8OdSjHdGY4MzrH63LGb7QBAACAXOIjUAYAAEi7iy66SOeff74cDocefvhh/fGPf1RRUVGnwmSpk4Hy7NmzO/Xm6Lgil10NjWFFotF0lwIAAAB0KX+gJVB2O9NcCQAAQP567733dNRRR+nwww/XIYccIkmyWCydfp92A+UdO3bo5ZdfliS9/fbbuuCCC/TBBx90+oPw7bwtN9c8mA8AAAC5JvZNPC8dygAAAGnz6quv6swzz9Qf//hHDRs2TLNnz1ZTU1On36fdQLm6ulqff/651q1bpzfeeEMTJkzQTTfdlFDR2LfY1/98jL0AAADIWKtWrdLYsWM1atQoPfbYY232v/baa6qsrFRlZaV+9rOfqaGhQZK0ZcsWTZ06VaeddpouvfTS+Ot79uzRRRddpDFjxmjq1Kmqq6tL6fWkSixQLnJ16hEuAAAA6EJ2u11jx47VI488omXLlqm0tFRNTU0aNWqU/vCHP3T4fdoNlL/66itNnz5dr7/+usaPH6+JEycqGAzuV/Foy+NuDpT9gVCaKwEAAMDe1NbWqqamRo8//rhWrFihJ598Uh9//HF8/549e1RdXa2amhqtWrVK/fv3V01NjSTphhtu0JQpU7R69WoNGDBA9957ryTpzjvv1KBBg/T888/r7LPP1s0335yWa0s2f8CQu8Aum7VTE/cAAACQJP369dO1116r119/XRdeeKGWLl3a4XPbvaMzDEOGYeiNN97Q0KFDFQwGFQgE9qtgtBX7+p+fkRcAAAAZae3atRoyZIiKi4vldrs1evRorV69Or7/008/1YEHHqh+/fpJkk466SS99NJLMgxD69ev1+jRoyVJEydOjJ/36quvqrKyUpI0fvx4vf766zKM3PvGmi8YijdQAAAAIHO4XC6de+65Wr58eYfPaTdQPvnkk3X88cere/fuGjBggM4++2yNHz9+vwpFW554oEyHMgAAQCbavn27SkpK4tulpaWqra2Nb/ft21fbtm2LP2/k+eef144dO1RfXy+PxyO7vXncQ0lJSfy8b76n3W6Xx+PRrl27UnVJKeMPGsxPBgAAyBHtDjGbPXu2zjnnHJWVlUmSFi5cqP79+ye9sHzzdaCcex0pAAAAuSAajbZ6CrZpmq22u3XrpltvvVXXXXedotGozjnnHDkcjjbHSft+mrZpmrJ2cixEz56eTh3fFUpKvJ06vtGIqmexq9Pn5SLWIDGsW2JYt8Swbolh3RLDuiWGdUuvdgPlHTt26N1331V5ebl+/etfa/Pmzbr66qsJlbuY02GT02GVL0CgDAAAkInKy8u1YcOG+HZdXZ1KS0vj25FIROXl5XrqqackSRs3btTBBx+sHj16yOfzKRKJyGaztTqvtLRUO3bsUHl5ucLhsBoaGlRcXNypunbu9CsaNff/AjuopMSrujpfp875yteo3t1dnT4v1ySydmDdEsW6JYZ1SwzrlhjWLTGsW8dZrZakNB+02/5QXV2tzz//XOvWrdMbb7yhCRMm6KabburyQtA8R5kOZQAAgMw0dOhQrVu3Trt27VIwGNSaNWs0fPjw+H6LxaIZM2aotrZWpmnqoYce0tixY+VwODRo0CA999xzkqQVK1bEzxsxYoRWrFghSXruuec0aNAgORy5NxrCHzCYoQwAAJAj2g2Uv/rqK02fPl2vv/66xo8fr4kTJyoYDKaitrzjcTkJlAEAADJUWVmZqqqqNG3aNJ1xxhkaP368KioqNGvWLG3atElWq1Xz58/XzJkzddppp6lbt2668MILJUlz587V0qVLNXbsWG3YsEFXXnmlJOmKK67QP/7xD40bN06PP/64rr/++jReYXI0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\n",
      "text/plain": [
       "<Figure size 1440x504 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_performance(loss=losses, accuracy=accuracies, log_file=f'{log_dir}/hopfield_pooling.pdf')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<h3 style=\"color:rgb(0,120,170)\">Adapt Hopfield-based Pooling</h3>\n",
    "<h3 style=\"color:rgb(208,90,80)\">We can now again explore the functionality of our Hopfield layer.</h3>\n",
    "\n",
    "Again, additional arguments are set to influence the training as well as the validation performance of the Hopfield-based pooling.\n",
    "<br><br>\n",
    "<table>\n",
    "    <tr>\n",
    "        <th>Argument</th>\n",
    "        <th>Value (used in this demo)</th>\n",
    "        <th>Description</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>input_size</code></th>\n",
    "        <th>num_characters (20)</th>\n",
    "        <th>Size (depth) of the input (state pattern).</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>hidden_size</code></th>\n",
    "        <th>8</th>\n",
    "        <th>Size (depth) of the association space.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>num_heads</code></th>\n",
    "        <th>8</th>\n",
    "        <th>Amount of parallel association heads.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "    <tr>\n",
    "        <th><code>update_steps_max</code></th>\n",
    "        <th>3</th>\n",
    "        <th>Number of updates in one Hopfield head.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>scaling</code></th>\n",
    "        <th>0.25</th>\n",
    "        <th>Beta parameter that determines the kind of fixed point.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>dropout</code></th>\n",
    "        <th>0.5</th>\n",
    "        <th>Dropout probability applied on the association matrix.</th>\n",
    "    </tr>\n",
    "    <tr>\n",
    "        <th><code>...</code></th>\n",
    "        <th>default</th>\n",
    "        <th>The remaining arguments are not explicitly used in this example.</th>\n",
    "    </tr>\n",
    "</table>"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "set_seed()\n",
    "hopfield_pooling = HopfieldPooling(\n",
    "    input_size=latch_sequence_set.num_characters,\n",
    "    hidden_size=8,\n",
    "    num_heads=8,\n",
    "    update_steps_max=3,\n",
    "    scaling=0.25,\n",
    "    dropout=0.5)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "output_projection = Linear(in_features=hopfield_pooling.output_size, out_features=1)\n",
    "network = Sequential(hopfield_pooling, output_projection, Flatten(start_dim=0)).to(device=device)\n",
    "optimiser = AdamW(params=network.parameters(), lr=1e-3)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "losses, accuracies = operate(\n",
    "    network=network,\n",
    "    optimiser=optimiser,\n",
    "    data_loader_train=data_loader_train,\n",
    "    data_loader_eval=data_loader_eval,\n",
    "    num_epochs=20)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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bt063Xbbbfrxj3+smpqafl+4rq5Or7zySupxY2Njt/NWrlypxsZGnX766TJNU1u3btW5556rBx54YMDFb98elmXZA14/HKqrA2psDA36PI/bqU0NobTOHSnS3Tuwd+li39LH3qWPvUsfe5c+9m5wHA4jZ40JxSocTd6DxU+gDAAAUPD6HXlx8803q6amRnfeeafKyspkGMaAbqI3bdo0rVmzRk1NTYpGo1q1apWmT5+eOr5gwQI9/vjjevTRR3XXXXeppqZmUGFyvjD/9ZLCv71cdnu4z3UVPjczlAEAAFCUQpFkoBwoY4YyAABAoes3UB49erTmzZunSZMm6c0339Tee++tYDDY7wvX1tZq4cKFmjdvnk477TTNnj1bkydP1vz587V27dphKT5f2KFGWf3cmC/oczNDGQAAAEWpq0OZkRcAAACFr9+RF7fddps++ugjffOb39TFF1+sffbZRy+//LJuuOGGfl+8vr5e9fX13Z5bsmRJj3W77767nn766UGUnT8MX6UkyW5rlkaN63Vdud+jj7f23cUMAAAAjERdM5T93JQPAACg4PXbofzcc8/pBz/4gVatWqWTTz5Z9913n95+++1s1FYQHL4KSZLVNoAO5TY6lAEAAFB8QhFTnhKn3CXOXJcCAACAIeo3UJaksrIyrV69WlOnTpUkxWIEo10M704dyn2o8LsV7YgrZiayURYAAACQN0IRk3EXAAAAI0S/gXJlZaWuueYarVu3TtOmTdOPf/xj1dTUZKO2gmA4XTLKyvsNlMt9yRuQ0KUMAACAYhOOmoy7AAAAGCH6DZRvvvlm1dTU6K677lJZWZkMw9DNN9+cjdoKhveUK+WZelafa4I+jyQCZQAAABSfUCSmgNed6zIAAAAwDPq9Kd/o0aN16qmn6qWXXtJbb72luXPnavTo0dmorWA4grX9rgl2dSiHCZQBAABQXMJRU2OqfLkuAwAAAMOg3w7lF154QaeffrqefPJJPfXUU5o7d66efPLJbNRWMMz3X1L02bv7XFPhTwbKrW0d2SgJAAAAyBvMUAYAABg5+u1Qvu222/Sb3/xG++yzjyTpvffe0+WXX64TTjgh48UVCmvHFsXf/Yvso78iw7nrD8oBr1uGIe2gQxkAAABFJGYm1GEmCJQBAABGiH47lE3TTIXJkvTZz35WiUQio0UVGoevUpJkt+3o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\n",
      "text/plain": [
       "<Figure size 1440x504 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plot_performance(loss=losses, accuracy=accuracies, log_file=f'{log_dir}/hopfield_pooling_adapted.pdf')"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
